enhance EXIF_DBG and correct read size for next ifd offset.
authortsteven4 <tsteven4@gmail.com>
Wed, 6 Jan 2016 23:57:27 +0000 (16:57 -0700)
committertsteven4 <tsteven4@gmail.com>
Wed, 6 Jan 2016 23:57:27 +0000 (16:57 -0700)
exif.cc

diff --git a/exif.cc b/exif.cc
index ef94149a09173e5c3fb761a37aff72028d5f34c3..0e66d33f7565dc15672cda95c9af09604ec56297 100644 (file)
--- a/exif.cc
+++ b/exif.cc
@@ -485,7 +485,10 @@ exif_read_ifd(exif_app_t* app, const uint16_t ifd_nr, gbsize_t offs,
     }
   }
 
-  ifd->next_ifd = gbfgetuint16(fin);
+#ifdef EXIF_DBG
+  gbsize_t next_ifd_offs = gbftell(fin);
+#endif
+  ifd->next_ifd = gbfgetuint32(fin);
 
   QUEUE_FOR_EACH(&ifd->tags, elem, tmp) {
     exif_tag_t* tag = (exif_tag_t*)elem;
@@ -540,6 +543,10 @@ exif_read_ifd(exif_app_t* app, const uint16_t ifd_nr, gbsize_t offs,
 #endif
   }
 
+#ifdef EXIF_DBG
+  printf(MYNAME "-offs 0x%08X: Next IFD=0x%08X\n", next_ifd_offs,  ifd->next_ifd);
+#endif
+
   return ifd;
 }